Manpages

Server(8) BSD System Manager’s Manual Server(8)

NAME

server — RSerPool Server (PE) for multiple example services

SYNOPSIS

server [−local=address:port,address,...] [−asapannounce=address:port] [−identifier=PE_identifier] [−policy=policy_specification] [−poolhandle=pool_handle] [−quiet] [−registrar=address:port] [−rereginterval=milliseconds] [−runtime=milliseconds] [−uptime=seconds] [−downtime=seconds] [−logcolor=on|off] [−logappend=filename] [−logfile=filename] [−loglevel=0-9] [−cspserver=address:port] [−cspinterval=milliseconds]
server
[−calcapp] [−capcapacity=calculations_per_second] [−capcleanshutdownprobability=probability] [−capcookiemaxcalculations=calculations] [−capcookiemaxtime=seconds] [−capkeepalivetransmissioninterval=milliseconds] [−capkeepalivetimeoutinterval=milliseconds] [−capmaxjobs=max_jobs] [−capobject=name] [−capscalar=scalae_file] [−capvector=vector_file]
server
[−chargen] [−chargenmaxthreads=threads]
server
[−daytime]
server
[−discard]
server
[−echo]
server
[−fractal] [−fgpcookiemaxpackets=messages] [−fgpcookiemaxtime=milliseconds] [−fgpfailureafter=messages] [−fgpmaxthreads=threads] [−fgptestmode] [−fgptransmittimeout=milliseconds]
server
[−pingpong] [−pppfailureafter=messages] [−pppmaxthreads=threads]
server
[−scripting] [−sskeeptempdirs] [−ssmaxthreads=threads] [−sstransmittimeout=milliseconds] [−keepaliveinterval=milliseconds] [−keepalivetimeout=milliseconds]

DESCRIPTION

server is an example Reliable Server Pooling (RSerPool) pool element (PE) that provides multiple services. Upon startup, one service has to be selected by the command-line parameters. To start multiple services, run multiple instances. server provides the following services:

CalcApp

Calculation application model for performance tests. See http://duepublico.uni-duisburg-essen.de/servlets/DerivateServlet/Derivate-16326/Dre2006-final.pdf for more information.

CharGen

Sending as much character data as possible.

Daytime

Sending back current time of day.

Discard

Discarding incoming data.

Echo

Echoing back incoming data.

Fractal

Fractal generator with cookie-based failover.

PingPong

Simple request-response example using cookies for failover.

Scripting

Remote execution of scripts with upload/download of input/output data. Could for example be used for distributing simulation runs. Take care of security when using this service!

ARGUMENTS

The following options are available:

Common Pool Element Parameters:

−local=address:port,address,...

Sets the local endpoint address(es).

−asapannounce=address:port|auto|off

Sets the multicast address and port the ASAP instance listens for ASAP Server Announces on.

−identifier=PE_identifier

Sets a fixed PE identifier. Handle with care!

−policy=policy_specification

Sets the pool policy and its parameters (default is Round Robin). Supported policy specifications:

RoundRobin (default policy)

WeightedRoundRobin:weight

Random
WeightedRandom:weight

LeastUsed

LeastUsedDegradation:increment

PriorityLeastUsed:increment

LeastUsedDPF:dpf_value

Priority:priority

...
−poolhandle=pool_handle

Sets the PH to a non-default value; otherwise, the default setting is the service-specific default.

−quiet

Do not print startup and shutdown messages.

−rereginterval=milliseconds

Sets the PE’s re-registration interval.

−runtime=seconds

After the configured number of seconds, the service is shut down. Floating-point values (e.g. 30.125) are possible.

−uptime=seconds

After negative exponential randomized uptime, the PE service goes down for a configured downtime. After that, it comes up again. This option can be used for testing the failure handling procedures.

−downtime=seconds

After negative exponential randomized downtime, the PE service comes up again. This option can be used for testing the failure handling procedures.

Logging Parameters:

−logappend=filename

Write logging output to a file (default is stdout); output will be appended to given file.

−logcolor=on|off

Turns ANSI colorization of the logging output on or off.

−logfile=filename

Write logging output to a file (default is stdout); given file will be overwritten.

−loglevel=0-9

Sets the logging verbosity from 0 (none) to 9 (very verbose). It is recommended to use at least a value of 2 to see possibly important error messages and warnings.

ASAP Protocol Parameters:

−registrar=address:port

Adds a static PR entry into the Registrar Table. It is possible to add multiple entries.

−registrarannouncetimeout=milliseconds

Sets the timeout for ASAP announces via multicast.

−registrarconnecttimeout=milliseconds

Sets the timeout for ASAP connection establishment.

−registrarconnectmaxtrials=trials

Sets the maximum number of ASAP connection establishment trials.

−registrarrequesttimeout=milliseconds

Sets the timeout for ASAP requests.

−registrarresponsetimeout=milliseconds

Sets the timeout for waiting to receive ASAP responses.

−registrarrequestmaxtrials=trials

Sets the maximum number of ASAP request trials.

Component Status Protocol (CSP) Parameters:

−cspinterval=milliseconds

Sets the interval for the CSP status updates in milliseconds. By default, the content of the environment variable CSP_INTERVAL is used. If not defined, no CSP status reports will be sent.

−cspserver=address:port

Sets the address of a CSP monitor server. By default, the content of the environment variable CSP_SERVER is used. If not defined, no CSP status reports will be sent.

Service Parameters:

−calcapp

Starts the CalcApp service.

−capcapacity=calculations_per_second

Sets the service capacity in calculations per second.

−capcleanshutdownprobability=probability

Sets the probability for sending state cookies to all sessions before shutting down.

−capcookiemaxcalculations=calculations

Sets the cookie interval in calculations.

−capcookiemaxtime=seconds

Sets the cookie interval in seconds.

−capkeepalivetransmissioninterval=milliseconds

Sets the keep-alive transmission interval in milliseconds.

−capkeepalivetimeoutinterval=milliseconds

Sets the keep-alive timeout in milliseconds.

−capmaxjobs=max_jobs

Sets the an upper limit for the number of simultaneous CalcApp requests.

−capobject=name

Sets the object name for scalar hierarchy.

−capscalar=scalar_file

Sets the name of vector scalar file.

−capvector=vector_file

Sets the name of vector output file.

−chargen

Starts the CharGen service.

−chargenmaxthreads=threads

Sets an upper limit for the number of simultaneous CharGen sessions.

−daytime

Starts the Daytime service.

−discard

Starts the Discard service.

−echo

Starts the Echo service.

−fractal

Starts the Fractal Generator service.

−fgpcookiemaxpackets=messages

Send cookie after given number of Data messages

−fgpcookiemaxtime=milliseconds

Send cookie after given number of milliseconds.

−fgpfailureafter=messages

After the set number of data packets, the server will terminate the connection in order to test failovers.

−fgpmaxthreads=threads

Sets an upper limit for the number of simultaneous Fractal Generator sessions.

−fgptestmode

Generate simple test pattern instead of calculating a fractal graphics (useful to conserve CPU power when debugging).

−fgptransmittimeout=milliseconds

Sets transmit timeout in milliseconds.

−pingpong

Starts the PingPong service.

−pppfailureafter=messages

After the set number of messages, the server will terminate the connection in order to test failovers.

−pppmaxthreads=threads

Sets an upper limit for the number of simultaneous PingPong sessions.

−scripting

Starts the Scripting service.

−sskeeptempdirs

Turns on keeping all temporary files for debugging. Handle with care!

−ssmaxthreads=threads

Sets an upper limit for the number of simultaneous sessions.

−sstransmittimeout=milliseconds

Sets the transmission timeout in milliseconds.

−sskeepaliveinterval=milliseconds

Sets the keep-alive interval in milliseconds.

−sskeepalivetimeout=milliseconds

Sets the keep-alive timeout in milliseconds.

ENVIRONMENT

server uses the environment variables CSP_SERVER and CSP_INTERVAL to define a CSP server to send reports to in the specified interval.

DIAGNOSTICS

If loglevel>0, log messages will be printed to stdout or into a specified log file.

SEE ALSO

For a detailed introduction to RSerPool, see:
http://duepublico.uni-duisburg-essen.de/servlets/DerivateServlet/Derivate-16326/Dre2006-final.pdf

Thomas Dreibholz’s RSerPool Page:
http://tdrwww.iem.uni-due.de/dreibholz/rserpool/

AUTHORS

Dr. Thomas Dreibholz
http://tdrwww.iem.uni-due.de/dreibholz/rserpool/
mailto://dreibh [AT] iem.de

RSerPool Server October 25, 2009 RSerPool Server